var core = require('core');
var mongoose = require('mongoose');
var schema = mongoose.Schema;

mongoose.Promise = global.Promise;

var User = function(){
    var location = new schema({
        Latitude: { type: String },
        Longitude: { type: String },
        Precision: { type: String },
        time: { type: Date, default: Date.now }
    });
    var UserSchema = new schema({
        uid : { type : Number , index : true },                         //user id
        sid : { type : Number , index : true },                         //user id
        name : { type : String, index : true, default : "" },           //user name
        openid : { type : String, index : true },                       //wechat id
        pwd : { type : String, default : "" },                          //password
        nickname : { type : String },                                   //nicname
        sex : { type : Number },                                        //性别
        city : { type : String },
        country : { type : String },
        province : { type : String },
        language : { type : String },
        headimgurl : { type : String },
        subscribe_time : { type : Number },
        unionid : { type : String },
        remark : { type : String },
        groupid : { type : String },
        tagid_list : { type : Array },
        location : [location],                                          //地理位置
        subscribe : { type : Boolean , default : false },               //是否关注
        merchant : { type: Array, default: [] },
        money : { type: Number, default: 0 }
    });

    UserSchema.plugin(core.db.plugin.increment, {
        model       : 'User',
        field       : "uid",
        start       : 0,
        increasing  : 1
    });

    return mongoose.model('User',UserSchema, 'User');
};

module.exports = User;
